package com.cly.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.cly.entity.Problem;
import com.cly.statistics.SumStatistics;
import com.cly.vo.ProblemVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 题目表 Mapper 接口
 *
 * @author by 春风能解释
 * <p>
 * 2024-06-05
 */
@Mapper
public interface ProblemMapper extends BaseMapper<Problem> {

    /**
     * 分页查询题目
     *
     * @param problemPage 分页对象
     * @param problem     条件
     * @return 分页对象
     */
    IPage<ProblemVo> lookProblem(@Param("page") Page<Problem> problemPage, @Param("problem") Problem problem);

    /**
     * 查看题目详情
     *
     * @param id 主键ID
     * @return 详情
     */
    ProblemVo lookProblemDetail(@Param("id") Long id);

    /**
     * 统计题目总数
     *
     * @return 总数
     */
    List<SumStatistics<Long>> sumStatisticsProblem();
}




